
#ifndef _LASPOINT_H_
#define _LASPOINT_H_

#include "LasReaderExport.h"

class CLasHeader;

class LASREADER_API CLasPoint
{
public:
	CLasPoint(void);
	~CLasPoint(void);
public:
	void SetHeader(const CLasHeader *pHeader);
	bool ReadPoint(const void *lpBuffer);
public:
	long GetRawX() const;
	long GetRawY() const;
	long GetRawZ() const;
	double GetCoordinateX() const;
	double GetCoordinateY() const;
	double GetCoordinateZ() const;

private:
	long m_iPointType;
	double m_dXScaleFactor;
	double m_dYScaleFactor;
	double m_dZScaleFactor;
	double m_dXOffset;
	double m_dYOffset;
	double m_dZOffset;
	
private:
	long m_RawX;
	long m_RawY;
	long m_RawZ;
	unsigned short m_Intensity;
	unsigned char m_ReturnNumber;
	unsigned char m_NumberOfReturns;
	unsigned char m_ScanDirectionFlag;
	unsigned char m_EdgeOfFlightLine;
	unsigned char m_Classification;

};

#endif
